// pages/weekly_detail/weekly_detail.js
const request = require('../../utils/promise.js');
Page({
  /**
   * 页面的初始数据
   */
  data: {
    id: null,
    userId: null,
    userInfo: null,
    taskContentArr: [],
    canIAdd: false,
    startDate: null,
    endDate: null,
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      id: options.id,
      userId: options.userId,
      canIAdd: options.userId==wx.getStorageSync('userId'),
      startDate: options.startDate,
      endDate: options.endDate
    })
    // 获取所有的任务信息和该用户信息
    this.reqUserInfo();
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.reqWeeklyReportsData();  // 请求数据
  },

  /**
   * 页面被用户分享时执行
   */
  onShareAppMessage() {
    return {
      title: '计划'
    }
  },

  /**
   * 分享到朋友圈
   */
  onShareTimeline() {
    return {
      title: '计划'
    }
  },

  /**
   * 获取任务
   */
  reqUserInfo() {
    request.GET('/user/userInfo', {userId: this.data.userId}).then(res => {
      // console.log(res);
      if (res.data.resCode==200) {
        this.setData({
          userInfo: res.data.userInfo,
        })
      }
    })
  },

  /**
   * 请求加载任务计划数据
   */
  reqWeeklyReportsData() {
    request.GET('/weekly/work/contents', {id: this.data.id}).then(res => {
      // console.log(res);
      if (res.data.resCode==200) {
        this.setData({
          taskContentArr: res.data.taskContentArr
        })
      } else {
        wx.showToast({
          title: '获取数据异常',
          icon: 'error'
        })
      }
    })
  },

  /**
   * 下来刷新
   */
  onPullDownRefresh() {
    this.reqWeeklyReportsData();  // 请求数据
    wx.stopPullDownRefresh();
  },

  /**
   * 点击需要添加计划的任务
   */
  bindPickerTaskChange(e) {
    // 任务为空
    if (this.data.taskArr.length==0) {
      wx.showToast({
        title: '所选任务为空, 无法添加任务计划',
        icon: 'none',
        duration: 1500
      })
      return;
    }

    const taskId = this.data.taskArr[e.detail.value].id;
    if (taskId) {
      wx.navigateTo({
        url: '/pages/weekly_content/weekly_content?id='+ this.data.id +'&userId='+ this.data.userId +'&taskId='+ taskId,
      })
    }
  },

  /**
   * 查看任务详情
   */
  // clickViewTaskDetail(e) {
  //   wx.navigateTo({
  //     url: '/pages/task_detail/task_detail?id='+ e.currentTarget.dataset.taskid,
  //   })
  // },
  
  /**
   * 跳转添加/修改工作内容
   */
  gotoModifyWorkContent(e) {

    const taskId = e.target.dataset.taskid;
    const contentId = e.target.dataset.contentid;
    const isTask = e.target.dataset.istask;
    var url = '/pages/weekly_content/weekly_content?id='+ this.data.id +'&userId='+ this.data.userId;
    if (taskId) {
      url += '&taskId='+ taskId;
    }
    if (contentId) {
      url += '&contentId='+ contentId;
    }
    // 跳转
    wx.navigateTo({
      url: url +'&startDate='+ this.data.startDate +'&endDate='+ this.data.endDate +'&isTask='+ isTask,
    })
  },

  /**
   * 点击删除对应的工作内容
   */
  clickDelWorkContent(e) {

    const that = this;
    wx.showModal({
      title: '温馨提示',
      content: '确定要删除该工作内容吗?',
      success (res) {
        if (res.confirm) {
          wx.showToast({
            title: '正在删除',
            icon: 'loading',
            duration: 30000,
            mask: true
          })
          
          request.GET('/weekly/delWorkReport', {contentId: e.target.dataset.contentid}).then(res => {
            // console.log(res)
            wx.hideToast();
            if (res.data.resCode==200) {
              that.reqWeeklyReportsData();  // 重新加载数据

              wx.showToast({
                title: '删除成功',
                icon: 'success',
                duration: 1000,
                mask: true
              })
            } else {
              wx.showToast({
                title: '删除异常',
                icon: 'error',
                duration: 1500,
                mask: true
              })
            }
          })
        } 
      }
    })
  },
  
})